package com.edu.mapper;

import com.edu.bean.Depart;
import com.edu.bean.Emp;
import com.edu.bean.EmpVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface EmpMapper {



//1.查询所有员工 List<Emp>  xml要求使用 resultMap
    List<Emp> queryEmp();
//2.根据id 查询 指定的员工  Map<String,Object> (不使用Emp类型直接接受)  xml resultType map
    Map<String,Object> queryEmpById(int empId);
//3.查询 指定年龄范围的 员工
    List<Emp> queryEmpByAge(@Param("min") int minAge,@Param("max") int maxAge);
//4.查询 指定性别的员工 java.util.List<Emp> resultMap
    List<Emp> queryEmpBySex(String sex);
//5 查询指定性别的员工的个数
    int queryCountBySex(String sex);
//6. 根据员工 名字 模糊查询 员工的信息  张 ***
    List<Emp> queryEmpByName(String name);
// 7. 根据员工id 查询员工的信息 和其所在部门的信息 (嵌套结果)
    Emp queryEmpAndDepartById(int id);
//8. 查询所有员工 和其所在部门信息(嵌套查询)
           List<Map<String,Object>>  queryEmp01(int id);
           List<Depart> queryDepartId();
//9. 查询指定性别的员工 和其所在部门信息(扩展类)
    List<EmpVo> queryEmpAndDepartBySex(String sex);


}
